Field of the Invention
This invention relates generally to menu driven interactive data processing systems. More particularly, it relates to a method to prevent a user from attempting to perform actions which will definitely fail and informing the user which of previously selected options will cause those actions to fail.
Background Art
In modern data processing systems, an attempt is usually made to write software which helps control those systems to allow their operation in a "user-friendly" manner. A typical method of writing user friendly software is to provide a series of menus which include lists of the actions which are selectable by a user at a particular place in the program. Such programs are popular because human factors studies have shown that it is easier for users to recognize and select desired items from a list on a display screen, rather than having to remember numerous and lengthy commands to operate the data processing system. When a user desires to select a particular item or action, he moves the input focus of the system to the selected item with the aid of cursor direction keys or a pointing device, such as a mouse and transmits an input to the system via a keyboard or mouse button. The input focus of the system is generally identical to the current cursor position.
As software grows in complexity, many actions may be "affected", i.e., disabled, by choices already made by the user during the data processing session. If these affected actions are left on the menu, a user may select such an affected action which will fail to execute. The data processing system will then flash an error message to the user indicating that the action cannot be accomplished. It would be advantageous to inform a user in advance that a particular action is affected, and therefore, not to attempt the action. This avoids tying up the data processing system with unfruitful requests and error messages.
In menu driven software, the prior art has utilized two methods of preventing a user from selecting such affected actions. A first method is to only include those actions which are unaffected, i.e., not disabled, and properly selectable by the user in the menu. In this method, affected actions are simply left off the menu. A disadvantage of this first method is that a user who remembers that a particular action could be selected at this place in the program when he had made different previous choices will become confused, believing that he is at a different place in the program. This may lead to a search for the affected action in other menus, wasting the user's time and increasing his dissatisfaction with the software.
A second method employed in the art is to highlight actions which are selectable in the menu, i.e., leaving the affected actions in a de-emphasized state. This is an improvement over the first method in that the user is not likely to be confused about his place in the program. However, the user has no way of understanding which of his previous selections have caused the action to be affected without referring to documentation.